html,
body {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
}

.loader {
  width: 130px;
  height: 170px;
  position: relative;

  &::before,
  &::after {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    bottom: 30px;
    left: -50%;
    z-index: 1;
    border-left: 150px solid transparent;
    border-right: 150px solid transparent;
    border-bottom: 100px solid darken(#2d4654, 10%);
    // transform: scale(0);
    // transition: all 0.2s ease;
  }
  &::after {
    border-right: 100px solid transparent;
    border-bottom: 100px solid darken(#2d4654, 8%);
  }

  .getting-there {
    width: 200%;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: -50%;
    font-size: 20px;
    color: #000;
  }

  .binary {
    width: 100%;
    height: 140px;
    display: block;
    color: #000;
    position: absolute;
    top: -40px;
    left: 50px;
    z-index: 2;
    overflow: hidden;

    &::before,
    &::after {
      font-family: "Lato";
      font-size: 40px;
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
    }

    &:nth-child(1) {
      &::before {
        content: "0";
        animation: a 1.1s linear infinite;
      }
      &::after {
        content: "0";
        animation: b 1.3s linear infinite;
      }
    }
    &:nth-child(2) {
      &::before {
        content: "1";
        animation: c 0.9s linear infinite;
      }
      &::after {
        content: "1";
        animation: d 0.7s linear infinite;
      }
    }
  }

  // ACTIVATE
  &.JS_on {
    &::before,
    &::after {
      transform: scale(1);
    }
  }
}

@keyframes a {
  0% {
    transform: translate(30px, 0) rotate(30deg);
    opacity: 0;
  }
  100% {
    transform: translate(30px, 150px) rotate(-50deg);
    opacity: 1;
  }
}
@keyframes b {
  0% {
    transform: translate(50px, 0) rotate(-40deg);
    opacity: 0;
  }
  100% {
    transform: translate(40px, 150px) rotate(80deg);
    opacity: 1;
  }
}
@keyframes c {
  0% {
    transform: translate(70px, 0) rotate(10deg);
    opacity: 0;
  }
  100% {
    transform: translate(60px, 150px) rotate(70deg);
    opacity: 1;
  }
}
@keyframes d {
  0% {
    transform: translate(30px, 0) rotate(-50deg);
    opacity: 0;
  }
  100% {
    transform: translate(45px, 150px) rotate(30deg);
    opacity: 1;
  }
}
